import { reactive, onMounted, onBeforeUnmount, getCurrentInstance } from 'vue';
import page from './page.ts';
import { useRouter, useRoute } from 'vue-router';
export function useListComponent(props: any = {}) {
  const router = useRouter();
  const route = useRoute();
  const { proxy } = getCurrentInstance() as any;

  const options: any = reactive({
    type: [
      {
        label: '装箱单',
        value: 'MBLX0018',
      },
      {
        label: '内标',
        value: 'MBLX0022',
      },
      {
        label: '平张合格证',
        value: 'MBLX0019',
      },
      {
        label: '卷标合格证',
        value: 'MBLX0020',
      },
    ],
    goods: [], //物料
    templateParameters: [
      {
        label: '生产单号',
        value: 'ProduceTaskBillNo',
      },
      {
        label: '协议书号',
        value: 'XieYiShuHao',
      },
      {
        label: '订单单号',
        value: 'SaleOrderGroupNumber',
      },
      {
        label: '下单总数量',
        value: 'ProductCount',
      },
      {
        label: '客户名称',
        value: 'CustomerName',
      },
      {
        label: '产品名称',
        value: 'ProductName',
      },
      {
        label: '产品单位',
        value: 'ProductUnit',
      },
      {
        label: '产品编码',
        value: 'ProductNo',
      },
      {
        label: '标签尺寸',
        value: 'ProductSize',
      },
      {
        label: '产品样式',
        value: 'ProductStyle',
      },
      {
        label: '总箱数',
        value: 'TotalBoxCount',
      },
      {
        label: '生产日期',
        value: 'ProductionDate',
      },
      {
        label: '包装日期',
        value: 'PackageDate',
      },
      {
        label: '出标方向',
        value: 'OutDirection',
      },
      {
        label: '贮存期限',
        value: 'ShelfLife',
      },
      {
        label: '卷号',
        value: 'VolumeNumber',
      },
      {
        label: '物料编号',
        value: 'GoodsCode',
      },
      {
        label: '客户版本',
        value: 'CustomerVersion',
      },
      {
        label: '产品代码(客户)',
        value: 'CustomerProductNo',
      },
      {
        label: '备注',
        value: 'BoxRemarks',
      },
      {
        label: '检验员',
        value: 'Inspector',
      },
      {
        label: '分条员',
        value: 'Divisioner',
      },
      {
        label: '当前箱数',
        value: 'BoxNo',
      },
      {
        label: '包装规格',
        value: 'PackageDescription',
      },
      {
        label: '每箱数量',
        value: 'EachBoxQuantity',
      },
    ],
  });
  const form: any = reactive({
    type: 'MBLX0018', //
    produceTaskBillNo: '', // 生产单号 SC2025050002
    xieYiShuHao: '', // 协议书号
    customerName: '', // 客户名称
    customerCode: '', // 客户code
    saleOrderGroupNumber: '', // 订单单号
    productName: '', // 产品名称
    productNo: '', // 产品编码
    productUnit: '', // 	产品单位
    productSize: '', // 标签尺寸
    productCount: '', // 下单总数量
    productStyle: '', // 产品样式
    pageEqualTags: '', // 包装信息-每张枚数/每卷枚数
    packageEqualPages: '', // 包装信息-每包张数【平张和折页有该属性】
    eachBoxQuantity: '', // 	包装信息-每箱包数
    fullBoxQuantity: null, // 整箱数量
    looseBoxQuantity: null, // 散箱数量
    fullBoxSpecification: '', // 整箱规格
    looseBoxSpecification: '', // 散箱规格
    inspector: '', // 检验员
    divisioner: '', // 分条员
    productionDate: '', // 生产日期
    packageDate: '', // 包装日期
    outDirection: '', // 出标方向
    shelfLife: '', // 贮存期限
    volumeNumber: '', // 卷号
    goodsCode: '', // 物料编号
    customerVersion: '', // 客户版本
    customerProductNo: '', // 产品代码(客户)
    boxRemarks: '', // 备注
  });
  //页面信息
  const dataInfo: any = reactive({
    loading: false, //加载
    loadingMsg: '列表数据加载中', //加载
  });

  const setLoading = (title: string = '正在获取数据,请稍等...') => {
    if (!dataInfo.loading) {
      dataInfo.loading = true;
      dataInfo.loadingMsg = title;
    }
  };
  onMounted(() => {});
  // 组件卸载前执行
  onBeforeUnmount(() => {});
  return { dataInfo, form, setLoading, options };
}
